home *** CD-ROM | disk | FTP | other *** search
Text File | 2019-04-13 | 38.0 KB | 1,189 lines |
-
-
-
-
-
- DarkTerm V4.0 - By Alan Peters
- ------------------------------
-
- (C) 1986 DarkStar Systems Software
-
-
-
- NOTE: This program is in the public domain, and may be
- given away, but may NOT be sold, nor may the main code be
- altered in any way.
-
-
- DarkTerm 4.0 is yet another enhancement of the previous
- version, 3.0. This new version is more compact, and offers
- some new features:
-
- - Xmodem Sum and Xmodem CRC protocols, with automatic
- padding removal, and CIS .IMG removal.
- - Multi-Page phone directory with multi-number sequence
- dialing.
- - New editor link file, for sequential text editing.
- - Modem Modules, files that contain all the basic modem
- communications routines, so that compatibility may be offered
- to the benefit of the user.
- - Accurate 1200/2400 baud rates, with a 200-600 baud
- range as well.
- - Increased buffer capacity (32k).
-
- This version was designed to go along with the DarkStar
- System 3 BBS programs, 2 very powerful, all ml BBS's that run
- in FULL color, or ASCII. If you want more info on these great
- programs, see the end of the docs.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Loading The Program
- -------------------
-
- V4.0 will load off any type of drive and off any device
- number, as long as the drive number is "0", not "1". Type
- LOAD"DARKTERM 4.0",device #,1 to load this program. After
- loading, the program will be set up according to DT4.SETUP
- file. If that file does not exist, or it does exist in it's
- original format, then the term will operate on the default
- settings that these docs are based on.
- The program has 2 modes of operation. The first status
- indicator at the bottom right will be either inversed, or
- normal. If it is inversed, you will be in command mode, where
- all commands that use the Commodore (C=) key will be
- functional, as will be the function keys. Otherwise, all
- commands and function keys are inoperative. Use SHIFT/RETURN
- to toggle between command mode, and normal mode. To do
- anything on the terminal, you will usually have to be in
- command mode.
- That same indicator will be either an A or a C indicating
- ASCII or COLOR terminal modes. SHIFT RUN/STOP will toggle
- between color and ASCII. Color mode is the same as it always
- was with previous DarkTerms, but it never hurts to refresh
- memories, so:
-
- C= 1-8 and CTRL 1-8 will change the cursor color.
- F1 and a color key (ie., F1, then CTRL-1) will set the
- border color.
- F3 and a color key will set the background color.
- F5 and a color key will set the foreground color.
- CTRL-I enables the UPPER-CASE/GRAPHICS character set at
- $E000 (57344).
- CTRL-H enables the UPPER & LOWER CASE character set at
- $E800 (59392).
- CTRL-G is the bell tone.
- Cursor Up, Down, Left, Right, Clear, Home, RVS On/Off all
- operate like the normal 64 screen editor.
- RETURN will remove all characters on that line after the
- point of return.
- INSERT will insert only on the current line; the same
- goes for delete.
-
- The ASCII mode may not appear to be ASCII when you are in
- half duplex, and you try typing. But it is, despite the fact
- that you can cursor around.
- NOTE: You can NOT send screen colors with F1/F3/F5 when
- you are in command mode, or you will send a function key
- string.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Status Indicators
- -----------------
-
- 00:00a 00:00:00 32768 01-01 A:B:H:I:U:W
- 1 2 3 4 5 6 7 8 9 0
-
-
- 1: Clock. Standard Am/Pm clock.
- 2: General purpose timer. This timer will be cleared
- whenever a carrier is detected from auto dial or auto answer.
- 3: Buffer Bytes Free. This is 32768 bytes when there is
- no phone directory in memory. This will count down to zero,
- and stop if it gets there.
- 4: Cursor row/column position. This is for the benefit of
- color mode, when one wishes to screen map when writing
- messages on the CBBS, or use hidden cursor movement.
- 5: ASCII/Color and Command Mode status. As explained
- above.
- 6: Buffer open/close. Use C= O to open and close the
- buffer. The buffer is open when the status flag is inversed.
- 7: Hide Screen Output. Use C= H to toggle. When inversed,
- all output to the screen is suppressed. However, if the
- buffer is open, data will still be sent to the buffer. This
- is useful for buffering data that you don't want visible on
- the screen.
- 8: Modem Input/Output Inhibit. Use C= I to toggle. When
- inversed, all input and output with the modem will be put on
- hold, while the carrier will remain in it's current state.
- 9: Upper Case Lock. Use C= U to toggle. All letters from
- A-Z will be in CAPS when this flag is inversed.
- 0: Word Wrap. If you are logged onto a system that runs
- at 80, 132, 160, or some other screen column format more than
- 40, then use C= W to enable wordwrap, and no words will be
- broken up on the right side of the screen.
-
- There are several other commands available, and each will
- be described in detail.
- When in a sub-menu of any command, use the RETURN key to
- get back to terminal mode, and if that doesn't work, use the
- STOP key to return.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Auto Dial / Auto Answer (C= A)
- ------------------------------
-
- Both auto dial and answer work according to the routines
- in the modem module file. See the notes at the end for how to
- create a modem module. Auto dialing here will only dial one
- number at a time, and will redial that number until a carrier
- is detected, or the STOP key is hit to abort dialing. A .
- string of 18 digits is acceptable for input. In the 1650
- version, only numbers are dialed, and all other characters
- are skipped. Auto answer will answer at the current baud rate
- until a carrier is detected, or the STOP key is used
- abort. If you want multiple autodialing, use C= P and the
- phone directory.
-
-
- Buffer Options (C= B)
- ---------------------
-
- <A> Append Buffer To File.
- <C> Clear Buffer.
- <E> Edit Buffer (See Below).
- <L> Load File Into Buffer.
- <M> Merge (Add) File To Current Buffer Contents.
- <P> Print Buffer. (ASCII Or Normal).
- <R> Review Buffer (See Below).
- <S> Save Buffer.
- <T> Transmit Buffer.
-
- B:00000 - Buffer Byte Count.
-
- Transmitting buffer contents will operate according to
- the transmit delay factor set in modem options (see C= M).
- When you turn on transmit buffer, you will be returned to
- color/ascii terminal mode, and the buffer will begin to send.
- You will most likely need a delay factor when sending, or the
- data may be garbled when sending pre-written messages to a
- BBS. The CBBS-3 can usually accept text with an xmit delay of
- 50 or less. Once the buffer xmits, you can use any command
- mode keys, since the buffer transmit is running in the
- background. Use SPACE to pause buffer send, and STOP to
- abort. You may not send a buffer IF: you are sending a
- function key, or, you have the buffer already open to accept
- data.
- Editing a buffer operates in the same manner as writing a
- message with CBBS-3. You will be placed in the editor, and
- anything you type will be buffered. You may write color
- messages, using screen colors, etc., as described above, or
- anything else. When you are writing text, the message "Buffer
- Edit On..." will be displayed. To exit buffer edit, use the
- STOP key. If you want to delete the current character from
- the buffer, then use CTRL-D, NOT delete, as delete will be
- buffered.
-
-
-
-
-
-
-
-
-
-
-
-
-
- When you are in the editor, you may not be at the end of
- the text data that it contains. Ie., if you write some text,
- exit, then select edit again, you will be at position 0,
- where the text may be at position 1234, the end of the data.
- Thus, entering any data now will in effect overwrite anything
- currently at that position. Using CTRL-D Now will erase the
- byte at position 0, and shift the entire buffer after that,
- from 1-1234, one position down, until the entire buffer has
- been justified. I will not explain what happens; you will
- have to try it yourself. Also, CTRL-X may also exit like
- STOP, BUT this has the effect of TRUNCATING the remainder of
- the buffer data, from the current position onwards.
- When you are in review mode <R>, you will be able to read
- the buffer, but you may STOP at any point using the SPACE
- bar, or abort using STOP. CTRL-X will allow you to re-enter
- the buffer at the position you stop at when you hit CTRL-X.
- Note that the character position stopped at is actually one
- past the point of re-entry. Ie., you hit CTRL-X in the middle
- of the word "commodore", stopping at the letter "m", so the
- buffer end looks like "com". You must enter "m" again, to
- preserve that last displayed character.
- If you review ALL the text, then you will be placed into
- edit mode at the end of the review. This allows you to
- continue messages that you have previously left off earlier.
- If you want to do formal text editing, use a wordpro, or the
- edit link.
- When using disk i/o with the buffer, note the bytes free
- counter at the bottom.
-
-
- Change Terminal Settings (C= C)
- -------------------------------
-
- Although only 15 options are displayed here, the
- parameter file DT4.SETUP will actually save 80 bytes of data
- to disk. First, the 15 shown with C= C.
-
- Modem File. This is the name of the file you want to use
- to control the autodial, answer, off-hook, and on-hook
- routines. All modem modules must be created at the expense of
- you, he user. You must have some experience with
- assembler/ml to create one. I myself have only provided ones
- for the 1650 and 1670, and even these may not suit your
- tastes. When you enter the name of the new file, save the
- parameters back. The modem file will NOT boot up. You will
- have to re-boot to initialize the term for a new modem file.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Function Key File. For the 16 function keys in the term,
- F1-F8, and C=1-C=8, you may load any default key file you
- want off disk. This file will be loaded up when you re-boot
- next time, or every time you hit RUN/STOP - RESTORE (Note:
- Run/Stop Restore will reset the terminal program in case of
- lock-up, but it will not be a complete reset that loads all
- the default files back in).
- Function keys are sent via terminal mode, color or ascii.
- You must be in command mode to send a function key string.
- You may use AT commands in the function keys if you have a
- smart modem. Key strings will be sent on a delay factor like
- buffer xmit. Also, you may not send a key string if the
- buffer is open, or you are xmitting the buffer. If you do not
- want to use a function key file, just use any file name that
- won't appear on the disk.
- Character Set. This will be the name of the default
- character set to load at boot up time. Using the name "rom"
- will set the characters to the normal text display you see,
- and will not load any custom character sets.
- Protocol. V4.0 uses both Punter and Xmodem. The xmodem is
- automatic, meaning that a CIS .IMG header will be stripped
- off the first block if found, and any padding on the last
- block will be stripped off before it is written to the disk
- This version was written by me, with the exception of the
- double buffering, which was found in a P.D. Merlin Source
- file of Xmodem 6.0, by MicroTechnic Solutions.
- Xmodem will operate in both CRC and Xmodem. When
- receieving a file, the term MAY be in CRC or SUM despite the
- setting, depending on what mode the sender is using. when
- sending, the setting here determines the mode.
- The Punter protocol is the new 8 bit C1.v2 version
- written by Steve Punter. I have made slight mods to it to
- accomodate relocation, on screen buffering, and my unique
- multi-transfer system. When setting the protocol, the files
- DT4.PROTO-P or DT4.PROTO-X will be loaded from disk. Be sure
- it is on the current disk! Once you set the protocol, it will
- be used as the default when re-booting, provided you save the
- setup back.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Phone Directory Pages. V4.0 uses a variable length phone
- directory. Each page will reduce the buffer size by 800
- bytes. Each time you change the value here, the buffer will
- be cleared, and reset, thus erasing all previous data,
- including a previous phone directory. Each page contains 20
- numbers. The number of pages range from 0 (no directory) to
- 10, which gives a full 200 number phone directory. This cuts
- the buffer down 25%, but still leaves ample room.
- Block Size. This is for the Punter protocol only. Values
- can be from 40 to 255, which is the maximum. This value is
- the number of disk file bytes (+header info) to send for each
- block. Thus smaller block sizes mean more blocks to send.
- Time. Your standard 12 hour Am/Pm clock. When you want to
- change it however, you MUST enter 4 digits only. This will be
- an hour-minute (HHMM) militairy time value. ie., midnight is
- "0000", noon is "1200", 3 pm is "1500", and 9 am is "0900".
- Printer Device #. Values from 4 to 7 are ok.
- Printer Secondary Address. Values from 0 to 99 are ok. 0
- is upper/case graphics, 7 is upper/lower case mode on a CBM
- printer.
- Disk Device #. Upon bootup, it is the device # of the
- drive you loaded the program from. Values from 0 to 99 are
- ok, but not recommended.
- Keyclick & Bell Tone. Since both have the same type of
- input, I'll explain both at the same time.
- The first character is an "E" for enabled, or a "d" for
- disabled. Use lower case "e" or "d" as the first input
- character, The second character is the waveform, either
- T (Triangle), S (Sawtooth) or N (Noise). No Pulse Waveforms
- as I didn't want to deal with pulse width. Use T, S, or N as
- input. The last 3 bytes are the frequency high byte, which
- has a range from 0-255. Example inputs: "ET80", "DN000",
- "ES145", etc.
- Dial Speed Delay. This is the number of MilliSeconds to
- delay between pulses with the 1650 modem when autodialing.
- 10 pps would work out to a delay of 1000/10 or 100 Milli-
- Seconds. 20 pps, the default, would be 1000/20, or 50 for a
- delay factor. Ranges can be from 0-999. With the 1670 module,
- a delay of 0 will TONE dial the modem, and any non-zero value
- will pulse dial the modem. If you write your own modem
- module, you will not need this value, or the next 2.
- Carrier Wait Delay. Because of line noise, long distance
- connect delays, etc., the 1650 modem will not look for a
- carrier until after this amount of time has elapsed.
- Hangup Delay. Before the start of each 1650 autodial, the
- modem is put on hook for this amount of time to ensure that
- the phone has been hung up. Both this and the above value can
- range from 0 to 99 seconds.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- When saving the SETUP file back, the following info will
- be used as the defaults for the term whenever you re-boot:
-
- -Modem File
- -Function Key File
- -Character Set File
- -Protocol
- -Phone Directory Pages
- -Printer Device & Secondary Address
- -Key Click Status
- -Bell Tone Status
- -Pulse Dial Delay
- -Hangup And Carrier Detect Delays
- -Current Screen Colors
- -Command Mode Status (En/Dis-Abled)
- -ASCII Or Color Mode
- -Upper Case Lock
- -Word Wrap Enable
- -Line Feed Status
- -Number Of Nulls
- -Transmit Delay
- -Baud Rate
- -Stop Bits, Word Length, Parity
- -Buffer Speed Flag
- -Carrier Detect Flag
-
-
- Disk Commands (C= D)
- --------------------
-
- Before and after every disk access, the command channel
- is checked for disk errors. The error channel status will be
- displayed at the bottom status line. Enter all commands in
- the normal disk command style:
-
- n0:file name - soft new
- n0:file name,id - hard new
- s0:file name,file name,etc - scratch
- r0:new name=0:old name - rename
- c0:new file=old file,old file2,etc - copy/concatenate
- i0 - initialize
- v0 - validate
- u; - reset drive
-
- Use "$" to read the disk directory, SPACE to pause, and
- STOP to abort. $pattern, ie., "$dt4*" will read the directory
- according to dos pattern matching.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- File Options (C= F)
- -------------------
-
- <R> Read A File.
- <P> Print A File (Ascii Or Normal).
- <E> Edit A File.
- <X> Extract From File.
- <T> Transmit File Over Modem.
-
- When transmitting a file (or buffer), it will be sent as
- ascii or color (normal) depending on whether you are in color
- terminal mode, or ascii. Transmit follows the delay factor
- like buffer xmit. Use SPACE to pause, and STOP to abort. The
- file will be displayed regardless of duplex, as all
- characters received from the modem will be discarded during
- the transmit.
- Extracting a file involves 2 passes. You will take a
- source file, and scan it on the first pass, to locate the
- line range you want (There is no provision for simultaneous
- extracts). When you have the desired line range, you will
- extract it to the destination file. You may use SPACE to
- pause pass 1 (Scan), and STOP to abort to pass 2. During pass
- 2, the source file will be scanned for the range, and then
- written out to disk. I have provided device 8 to 8 and device
- 8 to 9 extracts (NOTE: Source device is always 8, no matter
- what the terminal settings say). Using device 8 to 9 gives
- very fast results. You may abort pass 2 with the STOP key.
- When you want to Edit a file, you must load in the edit
- link file (DT4.EDLINK). Once loaded, the text editor will run
- by itself. This editor is very simple, and is not designed
- for professional formatted output; I put it in for the use of
- making pre-written messages to send to BBS's. It is slightly
- different then the version that was in V3.0.
- When reading a file, use SPACE to pause, and STOP to
- abort. When printing a file, use STOP to abort.
- fp
- EditLink Commands
- -----------------
-
- Use the F7 key to select any of the following functions:
-
- <A> Append buffer to file.
- <C> Toggle caps lock.
- <D> Disk directory.
- <E> Erase lines from current position.
- <L> Load file to buffer.
- <M> Merge file with buffer.
- <P> Print buffer (sec addr = 7!).
- <S> Save buffer to file.
- <X> Exit back to DarkTerm 4.0.
- <$> Send DOS command.
- <#> Change drive device #.
- <+> Insert Line.
- <-> Delete Line.
- Cursor Up will fast scroll up.
-
-
-
-
-
-
-
-
-
-
-
- Cursor Down will fast scroll down.
-
- You may only work with SEQ files. The buffer capacity is
- 680 lines.
- Cursor keys will scroll thru the range of the buffer.
- Insert and DELETE will ONLY work with the current line,
- as does delete. Use a wordpro for better line control. This
- is a 40 column editor.
- Home will move to line 0.
- Clear will move to the last line.
- The current work line is always fixed and highlighted in
- the middle of the screen. The buffer will scroll through this
- line.
- Use F1, F3, and F5 to change the 3 text colors. Use F2
- and F4 for the border and background colors.
- NOTE: the edit link resides at the start of the buffer;
- all data in the buffer will be cleared. Also, any current
- phone directory will be removed.
-
-
- Alter Function Keys (C= K)
- --------------------------
-
- Each of the 16 function key strings can be up to 31
- characters + an optional carriage return. enter the key you
- want to change for editing any of them. Use that key (F1-8,
- C= 1-8) when in terminal mode & command mode to send the key
- string. AT commands may be sent in this way. Function key
- strings use the same transmit delay as buffer and file xmit
- do.
-
-
- Load Character Set (C= L)
- -------------------------
-
- Any character set may be used, but it must havee a load
- address of 53744 ($E000). I recommend a full, 512 character
- bank, since the CBBS-3 uses both sets simultaneously. If you
- use "rom" as the file name, you will get the standard ROM
- character bank. You must still set the character set file
- name with C= C if you want to make this set the default.
-
-
- Modem Setting (C= M)
- --------------------
-
- You will see the status line change to the modem status
- line:
-
- B:0300 1:8:N B:C:D:0:050:NONE:--------
- 1 2 3 4 5 6 7 8 9 0 A
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 1:Baud Rate. 200-600, 1200, or 2400 (NOTE: V 3.0 had a
- 1200 baud timing bug that was corrected here).
- 2:Stop Bits (1 or 2).
- 3:Word Length (5-8).
- 4:Parity (None,Odd,Even,Mark,Space).
- 5:Buffer Speed Flag (Inversed = full speed). When using
- <R> in the buffer options to review the buffer, the speed at
- which the buffer is displayed is determined by this flag. The
- buffer will be displayed at either full speed, or the speed
- at which the current baud rate is set at. Using "S" during
- the buffer read will toggle this flag as well.
- 6:Carrier Detect Flag. When enabled, no file transfers
- will occur without a carrier, and, if a carrier is lost
- during a file transfer, the transfer will be aborted, and you
- will be notified of the loss of carrier.
- 7:Duplex. Full duplex is the normal BBS-terminal
- operation mode. When inversed, you will be in half duplex,
- and all data is echoed back to the screen.
- 8:Nulls. After each carriage return, a number of nulls
- (Ascii 0) will be sent over the modem to slow down
- transmission to the system you are connected to. Values run
- from none to 9.
- 9:Transmit Delay. When sending a buffer, function key, or
- file over the modem, the host may not be able to receive the
- data as fast as you send it. So, you should use a delay
- factor to insert a pause between each character as it is
- sent. If you intend to buffer messages to a CBBS-3, use a
- xmit delay between 50-200, although in some cases, 0 might
- work. This delay time is in MilliSeconds per each character.
- 0:Linefeed Status:
- IN:All linefeeds (ascii 10) received will be converted
- to carriage returns.
- OUT:All carriage returns sent will be converted to line
- feeds when they occur. Note that this is not the same as
- adding a line feed after a carriage return.
- BOTH: Both of the above.
- NONE: No line feeds will be checked for
- A:When you go on-hook, or off-hook, the message will be
- displayed here.
-
- To Change: Use:
- Baud Rate B
- Stop Bits S
- Word Length W
- Parity P
- Buffer Speed Rate R
- Carrier Detect Flag C
- Duplex D
- Nulls N
- Transmit Delay T
- Linefeed Status L
- Off-Hook (On-Line) +
- On-Hook (Off-Line) -
-
-
-
-
-
-
-
-
-
-
-
-
-
- Phone Directory (C= P)
- ----------------------
-
- V4.0 has a multi-dial, multi-page phone directory. This
- phone directory has the following characteristics:
-
- -1 to 10 pages, each containing 20 numbers, including a
- 20 character description, and an 18 character number string.
- -When loading or saving a phone directory, the file
- format is SEQ, and is a 40 column standard text file. You may
- thus edit this file with any standard text editor, including
- the edit link, if you do not want to use the <E>dit option.
- -When using the phone book, you must make sure that you
- have enough pages allocated for the size directory you will
- want to load in.
- -Up to 32 numbers may be dialed at one time, in the order
- that they are chosen with the (G)et command. After all
- numbers have been dialed once, they will be re-dialed until
- you enter STOP to abort auto-dialing.
- -The 18 character input string is exactly the same as
- that with the C= A command, and will use the same auto dial
- routine.
-
- Directory Commands:
-
- P:0 - Current Page #
- S:00 - Total numbers selected for dialing.
- <C> Clear all selected numbers.
- <D> Begin the multi-dial sequence. Note that T:000 is the
- try counter, and N:..... is the current number.
- <E> Edit numbers on current page. Use the cursor up/down
- keys to highlight the # you want to edit, then hit return.
- You will then have to enter a number, and a description. Hit
- return to select more numbers on the current page. Use STOP
- to exit the edit option.
- <G> Get Numbers. Select the numbers you want to dial like
- you did with <E>. Start at the numbers you want to dial
- first, then continue up to 32. If you want to remove a number
- if it is selected, then just hit return at it's position, and
- the number will be removed from the selected list. When a
- number is selected, an asterisk will appear between the
- number and description.
- <L> Load directory file.
- <N> Dial a single number (Same as dialing using C= A).
- (S) Save current directory.
- (+) Increment page.
- (-) Decrement page.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Reset Clock / Timer (C= R)
- --------------------------
-
- Very simple, eh?
-
-
- Set Screen Colors (C= S)
- ------------------------
-
- This one is simple too, just use the number keys, 1-3.
-
-
- File Transfer Options (C= T)
- ----------------------------
-
- <1> Single File Upload.
- <2> Single File Download.
- <3> Multi File Upload.
- <4> Multi File Download.
-
- NOTE: The multi transfer modes are designed and built
- into the Punter protocol, and will NOT work with Xmodem, so
- remember to change the protocol to Punter when
- multi-transferring.
- The file status line will appear as follows:
-
- P:FILE NAME:123:SU:B-0000:F-000
- 1 2 3 4 5 6
-
- 1:File Type.
- 2:File Name.
- 3:File Size.
- 4:Transfer Mode:
- SU:Single Upload
- SD:Single Download
- MU:Multi Upload
- MD:Multi Download
- 5:Blocks Left (Multi Only).
- 6:Files Left (Multi Only).
-
- Use the STOP key to abort any file transfer. Xmodem
- protocol was explained before. The multi-file transfer mode
- is unique, and guaranteed to work error free. It will not
- work with any other term. Source code for the multi-transfer
- method is available on request.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Exit Program (C= X)
- -------------------
-
- Very simple too, will exit to BASIC.
-
- Command Mode Summary (C= Z)
- ---------------------------
-
- Gives a color file of all commands in command mode
- (DT4.HELPME).
-
-
- The last few commands are: C= * (Clear the buffer), C= \
- (Pound) (Send ASCII delete (127)), and CTRL ; (Send ESCape).
-
-
- The remainder of the docs explain how to create a modem
- module, which will be followed by info on the DarkStar BBS
- Systems-3.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Creating A Modem File
- ---------------------
-
- A modem file is a small machine language file that
- handles 4 basic modem communications routines:
-
- 1. Auto-Dial - $4600
- 2. Auto-Answer - $4603
- 3. Off-Hook - $4606
- 4. On Hook - $4609
-
- You should use an assembler to create a modem file, and
- you must follow certain guidelines and restrictions when
- making one. I have provided PAL source code for both the 1650
- and 1670 modem files, and I have also supplied an equates
- file of the entire terminal program, to indicate what the
- terminal program uses, and what it doesn't.
-
- The file may not go past $4A00, therefore, you have up to
- 1K of space to create the file. You may access any one of 10
- routines used by DarkTerm, found in a jump table at $0900.
- The 10 routines are:
-
- $0900 - Print current character in accumulator. This is
- not $FFD2, but the routine that prints to the custom split
- screen thru my screen editor.
- $0903 - Print a line of text. Like above, but will print
- the string past the JSR call. Use .byt 0 to end the string.
-
- JSR $0903
- .ASC "This is a text string."
- .BYT 0
- more stuff....
-
- $0906 - Works like $0903, but will print up to 40
- characters to the status line.
-
- JSR $0906
- .ASC "This appears on row 24"
- .BYT 0
- more stuff....
-
- $0909 - Hex to decimal conversion routine. Enter with .X
- = lo byte, .Y = hi byte. Exits with DECML (34-39) containing
- the decimal string, in REVERSED order.
- $090C - Milli Second delay timer. Enter with .X = milli
- seconds lo byte, .Y = milli seconds hi byte. .A will be lost.
- $090F - Jiffy delay. Enter with .A containing from 1 to
- 255 jiffies (1/60 second).
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- $0912 - Screen Input Routine. Enter with .A = # bytes to
- input/clear, .X = row, and .Y = column. Returns with length
- of input in .A, and the data in the input buffer @ 60
- decimal.
- $0915 - Find file routine. Enter with .X/.Y = low/hi byte
- pointers to a file name of length 16, padded with shifted
- spaces. Carry will be cleared if not found, set if found, .A
- = type, .X/.Y = file size.
- $0918 - Hex to decimal 2 byte converter. This converts
- any hex digit from 0 to 99 in .A. Returns with .x as the
- first digit, and .Y as the second digit.
- $091B - Evaluate Integer. Will take a 1 to 5 character
- digit string in the input buffer at 60 dec, and convert it to
- hex. Enter with the input buffer and input length (15 dec)
- set, and call this routine. Returns with carry clear if it
- wouldn't evaluate, carry set if it was ok, .x/.y = lo/hi
- bytes of integer string.
-
- The modem file must start at $4600, and you must create a
- jump table at $4600, such as:
-
- *=$4600
- jmp autodial
- jmp answer
- jmp off-hook
- jmp on-hook
-
- Autodialing. .X and .Y contain the lo/hi byte pointers to
- the 18 character dialing text string. See the source for 1650
- and 1670 codes for how to break it down. You may use the
- upper 60 bytes of the input buffer as zero page use (80-140).
- Return with:
-
- Carry Clear is STOP key was hit to abort dialing.
- Carry set, AND:
- Zero flag set (BEQ) if the autodial was successful,
- and a carrier was detected.
- Zero flag clear (BNE) if the autodial did not give a
- carrier.
-
- Auto-answer. Exit with carry clear if STOP was hit, or
- carry set if carrier is detected.
-
- Off-hook, and on-hook, should be done and just use an
- RTS. No special requirements here.
-
- Please consult the source code for more info. Note that
- you can ignore the pulse delay @ 878/9 dec, the carrier wait
- delay @ 880, and the hangup delay @ 881 dec. I just used it
- in the original code, and it's use is not needed in your own
- routines.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Info On DarkTerm 4 / DarkStar BBS-3
- -----------------------------------
-
- This terminal program was written and debugged over a 3
- week period. Much of the basic i/o routines were taken from
- V3, but much has been changed. I am sure that all the minor
- irritations I have received about V1/2/3 have been resolved,
- and I suggest you only use this version. I know that the lack
- of easy help menus may affect ease of use, but I needed the
- space, and I found large menus to be real memory gobblers.
- I may add an auto-mode overlay later on, but it will not
- require any changes to the current program if I do make the
- changes.
-
-
- DarkTerm V4.0 Memory Map:
- -------------------------
-
- $0400-$05FF - Function key storage
- $0600-$07FF - Variable storage
- $0800-$3EE1 - Main code
- $3EE2-$45FF - Punter/Xmodem Protcol Overlay Area
- $4600-$49FF - Modem file overlay area
- $4A00-$4BFF - RS232 Buffers
- $4C00-$CBFF - 32k Buffer
- $4C00-$5E00 - Edit Link Overlay
- $4C00-$XXXX - Phone directory storage
- $4C00-$XXXX - Auto-Mode expansion
- $CC00-$CFFF - Screen memory
- $E000-$EFFF - Custom character storage
- $F000-$F7FF - Screen swapping area
- $F800-$FFFF - Not Used
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- DarkStar BBS V3.0
- -----------------
-
- These are actually 2 BBS programs in 1, a full color BBS
- program, and an ascii BBS. Each are basically identical, and
- offer many features. It is a user definable system, and is
- far too in-depth to explain. This is not the V1 system that
- was released as a prototype, but a new system with many
- features added. If you would like an info sheetmailed to
- you, send a SASE and anything you want to say in a letter to
- the address below. If you want to order the 2 disk BBS system
- program, then read the classifieds in Oct-Nov-Dec issues of
- Computes! Gazette. Cost: $49.95 US ($69.95 Cdn) to address
- below. Please send any bug problems to me via easyplex on
- Compuserve. My user id# will be next to terminal files I have
- uploaded there.
-
- A. L. Peters
- August 4, 1986
-
-
- DarkStar Systems Software
- 113 ValleyWoods Road, Unit 95
- Don Mills, Ontario
- Canada M3A 2R8
-
-
- Phone our 24 hour BBS at (416) 445-6788. Log on with the
- name of "DARK STAR", password "DEMO", in color mode.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-